home *** CD-ROM | disk | FTP | other *** search
/ Micromanía: 150 Juegos 2010 / 150Juegos_16.iso / Shareware / Shape Smash / shape-smash.swf / scripts / mx / utils / NameUtil.as < prev    next >
Encoding:
Text File  |  2010-05-14  |  2.0 KB  |  74 lines

  1. package mx.utils
  2. {
  3.    import flash.display.DisplayObject;
  4.    import flash.utils.getQualifiedClassName;
  5.    import mx.core.IRepeaterClient;
  6.    import mx.core.mx_internal;
  7.    
  8.    use namespace mx_internal;
  9.    
  10.    public class NameUtil
  11.    {
  12.       mx_internal static const VERSION:String = "2.0.1.0";
  13.       
  14.       private static var counter:int = 0;
  15.       
  16.       public function NameUtil()
  17.       {
  18.          super();
  19.       }
  20.       
  21.       public static function displayObjectToString(param1:DisplayObject) : String
  22.       {
  23.          var _loc2_:String = null;
  24.          var _loc3_:DisplayObject = null;
  25.          var _loc4_:String = null;
  26.          var _loc5_:Array = null;
  27.          _loc3_ = param1;
  28.          while(_loc3_ != null)
  29.          {
  30.             if(_loc3_.parent && _loc3_.stage && _loc3_.parent == _loc3_.stage)
  31.             {
  32.                break;
  33.             }
  34.             _loc4_ = _loc3_.name;
  35.             if(_loc3_ is IRepeaterClient)
  36.             {
  37.                _loc5_ = IRepeaterClient(_loc3_).instanceIndices;
  38.                if(_loc5_)
  39.                {
  40.                   _loc4_ += "[" + _loc5_.join("][") + "]";
  41.                }
  42.             }
  43.             _loc2_ = _loc2_ == null ? _loc4_ : _loc4_ + "." + _loc2_;
  44.             _loc3_ = _loc3_.parent;
  45.          }
  46.          return _loc2_;
  47.       }
  48.       
  49.       public static function createUniqueName(param1:Object) : String
  50.       {
  51.          var _loc2_:* = null;
  52.          var _loc3_:int = 0;
  53.          var _loc4_:int = 0;
  54.          if(!param1)
  55.          {
  56.             return null;
  57.          }
  58.          _loc2_ = getQualifiedClassName(param1);
  59.          _loc3_ = int(_loc2_.indexOf("::"));
  60.          if(_loc3_ != -1)
  61.          {
  62.             _loc2_ = _loc2_.substr(_loc3_ + 2);
  63.          }
  64.          _loc4_ = int(_loc2_.charCodeAt(_loc2_.length - 1));
  65.          if(_loc4_ >= 48 && _loc4_ <= 57)
  66.          {
  67.             _loc2_ += "_";
  68.          }
  69.          return _loc2_ + counter++;
  70.       }
  71.    }
  72. }
  73.  
  74.